package com.project.service;

import com.baomidou.mybatisplus.core.metadata.IPage;
import com.project.bean.StudentBean;

public interface IStudentService {
    /**
     * 学生入住
     * @param studentBean 学生信息对象
     */
    void checkIn(StudentBean studentBean);

    /**
     * 学生退房
     * @param studentId 学生id
     */
    void checkOut(Integer studentId);

    /**
     * 学生换房
     * @param studentId 学生id
     * @param newRoomId 新房间的id
     */
    void changeRoom(Integer studentId, Integer newRoomId);

    /**
     * 按id查询学生信息，同时查询房间地址，班级名称
     * @param studentId 学生id
     * @return 学生信息对象
     */
    StudentBean findById(Integer studentId);

    /**
     * 动态条件查询学生，同时查询房间的地址和班级名称
     * @param name 学生姓名（模糊匹配）
     * @param className 所在班级
     * @param roomName 入住的房间
     * @param pageNum 分页查询的页码
     * @return 符合条件的学生信息对象列表和分页信息对象
     */
    IPage<StudentBean> findStudents(String name, String className, String roomName, Integer pageNum);

}



